// 简写单词
#include <bits/stdc++.h>
using namespace std;

int main()
{
    string str;
    while (cin >> str)
    {
        char ch = str[0];
        if (ch >= 'a' && ch <= 'z') ch -= 32;
        cout << ch;
    }
    return 0;
}

// 牛牛的快递
#include <iostream>
using namespace std;

int main() 
{
    float a;
    char b;
    cin >> a >> b;
    int ret = 20; // 起步价20
    if (b == 'y') ret += 5;
    if (a > 1)
    {
        a--;
        while (a > 0)
        {
            ret++;
            a--;
        }
    } 
    cout << ret;
    return 0;
}

// 蛇形矩阵
#include <bits/stdc++.h>
using namespace std;

const int N = 101;
int arr[N][N];

int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1};

int main()
{
    int n, m;
    cin >> n >> m;
    int a = 0, b = 0, d = 1;
    for (int i = 1; i <= n * m; i++)
    {
        arr[a][b] = i;
        int x = a + dx[d], y = b + dy[d];
        if (x < 0 || x >= n || y < 0 || y >= m || arr[x][y])
        {
            d = (d + 1) % 4;
            x = a + dx[d], y = b + dy[d];
        }
        a = x, b = y;
    }
    for (int i = 0; i < n; i++)
    {
        for(int j = 0; j < m; j++)
            cout << arr[i][j] << " ";
        cout << endl;
    }
    return 0;
}

// 除2！
#include <bits/stdc++.h>
using namespace std;

using ll = long long;
priority_queue<ll> q;
ll n, k, t, sum = 0;

int main()
{
    cin >> n >> k;
    while (n--)
    {
        cin >> t;
        sum += t;
        // 把偶数存进堆
        if (t % 2 == 0) q.push(t);
    }
    while (!q.empty() && k--)
    {
        t = q.top() / 2;
        q.pop();
        sum -= t;
        if (t % 2 == 0) q.push(t);
    }
    cout << sum << endl;
    return 0;
}
